package com.itheima.FileTest;

import java.io.File;
import java.util.HashMap;

//统计一个文件夹中每种类型文件的数量

public class Test2 {
    public static void main(String[] args) {
        File file = new File("Module2");
        HashMap<String,Integer> hm = new HashMap<>();
        getCount(hm,file);
        System.out.println(hm);
    }

    public static void getCount(HashMap<String, Integer> hm, File file) {

        //进入 并且获取 所有的文件架对象
        File[] files = file.listFiles();
        //遍历
        for (File f : files) {
            //判断
            if(f.isFile()){
                //得到文件的名字
                String fileName = f.getName();
                //以“.” 划分
                String[] fileNameArr = fileName.split("\\.");
                //如果文件长度等于2
                if(fileNameArr.length == 2){
                    //把【1】位置的数据取出来
                    String fileEndName = fileNameArr[1];
                    //如果哈希表中有这个类型
                    if(hm.containsKey(fileEndName)){
                        Integer count = hm.get(fileEndName);
                        count++;
                        hm.put(fileEndName,count);
                    }else{
                        hm.put(fileEndName,1);
                    }
                }
            }else {
                getCount(hm,f);
            }
        }
    }
}
